import { execSync } from 'node:child_process'
import path from 'node:path'
import { fileURLToPath } from 'node:url'
import chalk from 'chalk'

// 解决 使用 ES Module，无法直接使用 __filename 和 __dirname。
const __filename = fileURLToPath(import.meta.url)
const __dirname = path.dirname(__filename)

// 执行命令目录
const _cwdPath = process.cwd()

// 部署模式
const DEPLOY_ENV = process.env.DEPLOY_ENV // 值为 test:测试环境 production: 正式环境

// 执行脚本方法
const run = (command, options = { stdio: 'inherit' }) => execSync(command, options)

// 主方法
const main = async () => {
  console.log(chalk.green('开始打包admin: \n'))
  run(DEPLOY_ENV === 'test' ? 'vite build --mode test' : 'vite build --mode production') // 打包代码
  console.log(chalk.green('admin打包完成 \n'))

  console.log(chalk.green('构建成功'))
}

main()
